September Listing 1
         TTL "Listing One: SPEED/ASM Equates"
;
;
;
*************************************
*                                   *
*          Listing One:             *
*          SPEED/ASM Equates        *
*                                   *
*************************************
;
;
;
;
;
;
;
;
; GENERAL PURPOSE EQUATES
;
; The following variables are used
; by the SPEED/ASM package and
; shouldn't be used by the SPEED/ASM
; programmer.
;
;
;
;
FORASAV  EPZ 0
FORXSAV  EPZ FORASAV+1
FORYSAV  EPZ FORXSAV+1
FORZPG   EPZ FORYSAV+1
DESTADR  EPZ FORZPG+2
PTRADR   EPZ DESTADR+2
ISIMMED  EPZ PTRADR+2
OP       EPZ ISIMMED+1
MAXLEN   EPZ OP+2
VALUE    EPZ MAXLEN+1
DIGIT    EPZ VALUE+2
LEAD0    EPZ DIGIT+1
JMPADR   EPZ LEAD0+1
COUNT    EPZ JMPADR+2
GOTLN    EPZ COUNT+1
LINEINDX EPZ GOTLN+1
SIGN     EPZ LINEINDX+1
ACL      EPZ SIGN+1
ACH      EPZ ACL+1
XTNDL    EPZ ACH+1
XTNDH    EPZ XTNDL+1
AUXL     EPZ XTNDH+1
AUXH     EPZ AUXL+1
;
PROMPT   EPZ $33
RNDL     EPZ $4E
RNDH     EPZ $4F
STACK    EQU $100
INPUT    EQU $200
;
;
;
;
;
;
;
*****************
*   CONSTANTS   *
*****************
;
;
;
; The following symbols are constants
; for values "FALSE", "TRUE", and
; Carriage Return (respectively)
;
; These symbols should only appear
; as immediate operands to a 6502
; instruction or in the operand field
; of a pseudo-opcode like BYT.
;
;
;
;
;
FALSE    EQU 0
TRUE     EQU 1
CR       EQU $8D
;
;
;
;
;
;
; "IF" STATEMENT EQUATES
;
; The following symbols should only
; be used in the ADR pseudo-opcode
; following a call to the SPEED/ASM
; IFx routines.
;
;
;
EQ       EQU "="
NE       EQU "#"
GT       EQU ">"
LT       EQU "<"
GE       EQU ">"|"="*256
LE       EQU "<"|"="*256
;
;
;
;
;
;
;
****************************
*  SPEED/ASM ENTRY POINTS  *
****************************
;
;
;
;
; NOTE: THE EQUATE OF PUTC MUST
; BE CHANGED IF YOU RELOCATE
; SPEED/ASM TO SOME LOCATION
; OTHER THAN $7800
;
;
;
PUTC     EQU $7800
GETC     EQU PUTC+3
SAGL     EQU GETC+3          ;FOR USE BY S/A ONLY- SEE DOC.
SAPC     EQU SAGL+3          ; "   "   "  "   "     "   "
HOME     EQU SAPC+3          ;HOME AND CLEAR
READLN   EQU HOME+3
INIT     EQU READLN+3
FOR      EQU INIT+3
FOR0     EQU FOR+3
NEXT     EQU FOR0+3
IFI      EQU NEXT+3
IFI0     EQU IFI+3
IFS      EQU IFI0+3
IFS0     EQU IFS+3
MOVE     EQU IFS0+3
LOAD     EQU MOVE+3
MOVS     EQU LOAD+3
LDSTR    EQU MOVS+3
PRINT    EQU LDSTR+3
PRTSTR   EQU PRINT+3
PRTINT   EQU PRTSTR+3
RDSTR    EQU PRTINT+3
RDINT    EQU RDSTR+3
ONXGOTO  EQU RDINT+3
CASE     EQU ONXGOTO+3
CASEI    EQU CASE+3
INSET    EQU CASEI+3
NOTINSET EQU INSET+3
ABS      EQU NOTINSET+3
NEG      EQU ABS+3
MUL      EQU NEG+3
DIV      EQU MUL+3
MOD      EQU DIV+3
RND      EQU MOD+3
SUBSTR   EQU RND+3
INDEX    EQU SUBSTR+3
LENGTH   EQU INDEX+3
CONCAT   EQU LENGTH+3
GETWZPG  EQU CONCAT+3        ;USED BY SPEED/ASM
RDFP     EQU GETWZPG+3
PRTE     EQU RDFP+3
PRTF     EQU PRTE+3
FADD     EQU PRTF+3
FSUB     EQU FADD+3
FMUL     EQU FSUB+3
FDIV     EQU FMUL+3
FLT      EQU FDIV+3
FIX      EQU FLT+3
FNEG     EQU FIX+3
FADDTN   EQU FNEG+3
FSUBTN   EQU FADDTN+3
FTIMES   EQU FSUBTN+3
FINTO    EQU FTIMES+3
IFF      EQU FINTO+3
MOVFP    EQU IFF+3
;
;
;
         END 